package cn.iocoder.yudao.module.eval.controller.admin.subject.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.time.LocalDateTime;
import java.math.BigDecimal;

@Schema(description = "管理后台 - 评价科目 Response VO")
@Data
public class EvalSubjectRespVO {

    @Schema(description = "主键ID", example = "1024")
    private Long id;

    @Schema(description = "科目名称", example = "理论考试")
    private String subjectName;

    @Schema(description = "科目代码", example = "THEORY-001")
    private String subjectCode;

    @Schema(description = "计划ID", example = "1")
    private Long planId;

    @Schema(description = "科目类型", example = "theory")
    private String subjectType;

    @Schema(description = "考试方式", example = "written")
    private String examMethod;

    @Schema(description = "满分", example = "100.00")
    private BigDecimal maxScore;

    @Schema(description = "及格分", example = "60.00")
    private BigDecimal passScore;

    @Schema(description = "权重", example = "0.30")
    private BigDecimal weight;

    @Schema(description = "考试时长（分钟）", example = "120")
    private Integer duration;

    @Schema(description = "开始时间", example = "2024-01-01 09:00:00")
    private LocalDateTime startTime;

    @Schema(description = "结束时间", example = "2024-01-01 11:00:00")
    private LocalDateTime endTime;

    @Schema(description = "考试地点", example = "A栋301教室")
    private String examLocation;

    @Schema(description = "科目说明", example = "本科目主要考查理论知识掌握情况")
    private String subjectDescription;

    @Schema(description = "是否启用", example = "true")
    private Boolean enabled;

    @Schema(description = "创建时间", example = "2024-01-01 10:00:00")
    private LocalDateTime createTime;

} 